package com.sharer.last.model.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sharer.last.base.model.BasePO;
import lombok.*;

import java.time.LocalDateTime;

/**
 * 博客评论
 *
 * @ClassName CommentPO
 * @Author WangJin
 * @Date 2023/5/5 17:35
 * @Description
 * @Version 1.0
 */
@TableName("comment")
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Data
@EqualsAndHashCode(callSuper = true)
public class CommentPO extends BasePO {
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 评论类型 0普通文章 1关于我页面，2友链页面
     */
    private Integer commentType;

    /**
     * 父评论id
     */
    private Long parentCommentId;

    /**
     * 评论内容
     */
    private String content;

    /**
     * 关联id comment_type=1时，存放blog的id,=2时存放personal_detail的id。。。
     */
    private Long relevantId;

    /**
     * 公开或隐藏 1：公开 0：隐藏
     */
    private Integer isPublished;

    /**
     * 博主回复 1：是 0：否
     */
    private Integer isAdminComment;

    /**
     * 昵称
     */
    private String nickname;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 头像(图片路径)
     */
    private String avatar;

    /**
     * 评论者ip地址
     */
    private String ip;

    /**
     * 接收邮件提醒 0：不提醒 1：提醒
     */
    private Integer isNotice;

    /**
     * 如果评论昵称为QQ号，则将昵称和头像置为QQ昵称和QQ头像，并将此字段置为QQ号备份
     */
    private String qq;

    /**
     * 个人网站
     */
    private String website;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 逻辑删除 未添加则直接删除数据 添加后为update语句
     */
    @TableLogic
    private Integer isDelete;
}
